R

トップページ
Google
WWWを検索
サイト内を検索

他のプログラミング言語を経験してからRをいじりだした人に多いと思うのですが、便利関数で簡潔に実現できる処理を、ループ処理で複雑に書いて、苦労した上に見通しとパフォーマンスが悪いコードを生成することがあります。

1 mCn

組み合わせの数の計算ができるchoose関数があります。コンビネーションではないので注意しましょう。

# 5!/(3!2!)
choose(5, 3)
[1] 10
# factorialで書くと長々として遅い
factorial(5)/(factorial(3)*factorial(2))
[1] 10

2 対話モードで動いているか調べる

interactive()TRUEが戻って来た場合は対話モードで動いています。バッチ処理と対話モードで挙動を変えたいときに使えます。

3 sweep

行列の要素を行や列ごとに足したり引いたりする関数です。applyで間に合うので使う機会は乏しいのですが、たまに使われているのを見かけます。

4 GUIのファイル・ダイアログを使う

使いどころは乏しい気もしますが、file.choose()でできます。

file.edit(file.choose())

とすれば、ファイルを指定してエディターで編集できます。